package com.travel.vo;

import com.travel.dto.TravelAttractionAddDTO;
import com.travel.dto.TravelItineraryAddDTO;
import com.travel.dto.TravelPricingDetailAddDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * @author: libin
 * Date: 2025/6/10 11:03
 * Description:
 **/
@Data
@ApiModel(value = "首页返回的实体")
public class TravelProductVo {

    @ApiModelProperty(value = "产品唯一标识ID", example = "1")
    private Integer id;

    @ApiModelProperty(value = "旅游产品名称", example = "旅顺口精品一日游")
    private String name;

    @ApiModelProperty(value = "成人价格", example = "158.00", position = 3)
    private BigDecimal adultPrice;

    @ApiModelProperty(value = "小孩价格", example = "88.00", position = 4)
    private BigDecimal childPrice;

    @ApiModelProperty(value = "旅游目的地", example = "辽宁大连旅顺")
    private String location;

    @ApiModelProperty(value = "产品简要描述信息", example = "探索旅顺历史文化...")
    private String description;

    @ApiModelProperty(value = "旅游产品封面图片路径", example = "2025-06-10 10:00:00")
    private String imageUrl;

    @ApiModelProperty(value = "关联的行程列表", required = true)
    private List<TravelItineraryVo> itineraries;

    @ApiModelProperty(value = "关联的景点列表", required = true)
    private List<TravelAttractionVo> attractions;

    @ApiModelProperty(value = "关联的费用项列表", required = true)
    private List<TravelPricingDetailVo> pricingDetails;
}
